unit ULinhas;


interface

uses
  SysUtils, Windows, Messages, Classes, Graphics, Controls,
  Forms, Dialogs, UCelula;

type
  TLinha = class (TObject)
  private
    FDesdobra: word;
    FLinPai: word;
    FTipo: ST100;
  public
    Colunas: Array[1..100] of TCelula;
    procedure SetTipo(const Value: ST100);
    procedure SetDesdobra(const Value: word);
    procedure SetLinPai(const Value: word);
    property Tipo: ST100 read FTipo write SetTipo;
    property Desdobra: word read FDesdobra write SetDesdobra;  // numero de linhas a desdobrar depois da linha atual (default 0)
    property LinPai: word read FLinPai write SetLinPai;  // numero da linha pai de uma linha desdobrada (default 0)
    Constructor Create;
  end;



implementation

{
************************************ TLinha ************************************
}

Constructor TLinha.Create;
var
  i: Word;
begin
  for i := 1 to 100 do  // ajustar para NCols passando como parametro no create
    begin
      Colunas[i] := TCelula.Create;
      SetTipo('');
      SetDesdobra(0);
      SetLinPai(0);
    end;
end;

procedure TLinha.SetDesdobra(const Value: word);
begin
  FDesdobra := Value;
end;

procedure TLinha.SetLinPai(const Value: word);
begin
  FLinPai := Value;
end;

procedure TLinha.SetTipo(const Value: ST100);
begin
  FTipo := Value;
end;

end.
